#ifndef AXP15_H_
#define AXP15_H_

/* For AXP15 */
#define AXP15_STATUS              (0x00)
#define AXP15_MODE_CHGSTATUS      (0x01)
#define AXP15_OTG_STATUS          (0x02)
#define AXP15_IC_TYPE             (0x03)
#define AXP15_DATA_BUFFER1        (0x04)
#define AXP15_DATA_BUFFER2        (0x05)
#define AXP15_DATA_BUFFER3        (0x06)
#define AXP15_DATA_BUFFER4        (0x07)
#define AXP15_DATA_BUFFER5        (0x08)
#define AXP15_DATA_BUFFER6        (0x09)
#define AXP15_DATA_BUFFER7        (0x0A)
#define AXP15_DATA_BUFFER8        (0x0B)
#define AXP15_DATA_BUFFER9        (0x0C)
#define AXP15_DATA_BUFFERA        (0x0D)
#define AXP15_DATA_BUFFERB        (0x0E)
#define AXP15_DATA_BUFFERC        (0x0F)
#define AXP15_DCDC2_DVM_CTRL      (0x25)
#define AXP15_IPS_SET             (0x30)
#define AXP15_VOFF_SET            (0x31)
#define AXP15_OFF_CTL             (0x32)
#define AXP15_CHARGE1             (0x33)
#define AXP15_CHARGE2             (0x34)
#define AXP15_BACKUP_CHG          (0x35)
#define AXP15_POK_SET             (0x36)
#define AXP15_DCDC_FREQSET        (0x37)
#define AXP15_VLTF_CHGSET         (0x38)
#define AXP15_VHTF_CHGSET         (0x39)
#define AXP15_APS_WARNING1        (0x3A)
#define AXP15_APS_WARNING2        (0x3B)
#define AXP15_TLTF_DISCHGSET      (0x3C)
#define AXP15_THTF_DISCHGSET      (0x3D)
#define AXP15_DCDC_MODESET        (0x80)
#define AXP15_ADC_EN1             (0x82)
#define AXP15_ADC_EN2             (0x83)
#define AXP15_ADC_SPEED           (0x84)
#define AXP15_ADC_INPUTRANGE      (0x85)
#define AXP15_ADC_IRQ_RETFSET     (0x86)
#define AXP15_ADC_IRQ_FETFSET     (0x87)
#define AXP15_TIMER_CTL           (0x8A)
#define AXP15_VBUS_DET_SRP        (0x8B)
#define AXP15_HOTOVER_CTL         (0x8F)
#define AXP15_GPIO012_SIGNAL      (0x94)

#define AXP15_INTEN1              (0x40)
#define AXP15_INTEN2              (0x41)
#define AXP15_INTEN3              (0x42)
#define AXP15_INTSTS1             (0x48)
#define AXP15_INTSTS2             (0x49)
#define AXP15_INTSTS3             (0x4A)

/*For ajust axp15-reg only*/
#define AXP15_STATUS              (0x00)
#define AXP15_LDO0OUT_VOL         (0x15)
#define AXP15_LDO34OUT_VOL        (0x28)
#define AXP15_LDO5OUT_VOL         (0x29)
#define AXP15_LDO6OUT_VOL         (0x2A)
#define AXP15_GPIO0_VOL           (0x96)
#define AXP15_DC1OUT_VOL          (0x26)
#define AXP15_DC2OUT_VOL          (0x23)
#define AXP15_DC3OUT_VOL          (0x27)
#define AXP15_DC4OUT_VOL          (0x2B)
#define AXP15_LDO0_CTL            (0x15)
#define AXP15_LDO3456_DC1234_CTL  (0x12)
#define AXP15_GPIO0_CTL           (0x90)
#define AXP15_GPIO1_CTL           (0x91)
#define AXP15_GPIO2_CTL           (0x92)
#define AXP15_GPIO3_CTL           (0x93)
#define AXP15_GPIO0123_SIGNAL     (0x97)
#define AXP15_DCDC_MODESET        (0x80)
#define AXP15_DCDC_FREQSET        (0x37)


/* bit definitions for AXP events ,irq event */
/*  AXP15  */
#define AXP15_IRQ_ALDOIN_H2L      (2)
#define AXP15_IRQ_ALDOIN_L2H      (3)
#define AXP15_IRQ_LDO0IN_H2L      (5)
#define AXP15_IRQ_LDO0IN_L2H      (6)
#define AXP15_IRQ_PEKLO           (8)
#define AXP15_IRQ_PEKSH           (9)
#define AXP15_IRQ_DCDC4_V_LOW     (10)
#define AXP15_IRQ_DCDC3_V_LOW     (11)
#define AXP15_IRQ_DCDC2_V_LOW     (12)
#define AXP15_IRQ_DCDC1_V_LOW     (13)
#define AXP15_IRQ_GPIO0           (16)
#define AXP15_IRQ_GPIO1           (17)
#define AXP15_IRQ_GPIO2           (18)
#define AXP15_IRQ_GPIO3           (19)
#define AXP15_IRQ_PEKFE           (21)
#define AXP15_IRQ_PEKRE           (22)
#define AXP15_IRQ_EVENT_TIMEOUT   (23)

extern s32 axp_debug;
extern struct axp_config_info axp15_config;

#endif /* AXP15_H_ */
